ExtractFramesNativeMemory(Stream,List<int>) Method
Syntax
Parameters
stream
A System.IO.Stream containing the JPEG 2000 file data from which frames are being extracted.
frames
Frame indices. A list of integers specifying the indices of the frames to be extracted from the input stream. All indices should be 0-based.
Return Value
A Leadtools.RasterNativeBuffer object that contains a JPEG 2000 file with only the extracted frames.
Example
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Jpeg2000;
public RasterNativeBuffer ExtractFramesNativeMemoryStreamExample(List<int> frames)
{
FileStream fs = File.OpenRead(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"));
Jpeg2000Engine engine = new Jpeg2000Engine();
Jpeg2000FileInformation fileInfo = engine.GetFileInformation(fs);
for (int i = 0; i < frames.Count; i++)
if (frames[i] >= fileInfo.Frame.GetLength(0))
return RasterNativeBuffer.Empty;
RasterNativeBuffer buffer = engine.ExtractFramesNativeMemory(fs, frames);
// Clean up
fs.Close();
return buffer;
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Jpeg2000
Private Function ExtractFramesNativeMemoryStreamExample(ByVal frames As List(Of Integer)) As RasterNativeBuffer
Dim fs As FileStream = File.OpenRead(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"))
Dim engine As New Jpeg2000Engine()
Dim fileInfo As Jpeg2000FileInformation = engine.GetFileInformation(fs)
For i As Integer = 0 To frames.Count - 1
If (frames(i) >= fileInfo.Frame.GetLength(0)) Then
Return RasterNativeBuffer.Empty
End If
Next i
Dim buffer As RasterNativeBuffer = engine.ExtractFramesNativeMemory(fs, frames)
' Clean up
fs.Close()
Return buffer
End Function
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"
End Class